package cn.tangsihai.hrm.exceptions;

import cn.tangsihai.hrm.util.AjaxResult;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * 全局异常处理
 * 注：全局异常处理想要生效必须要被服务的启动类扫描到
 * 方式：1.包名一样 2.启动类@Import（{全局异常处理类.class}）
 */
// 对RestController的加强，其中的方法可以在其他controller执行前、后执行
@RestControllerAdvice
public class GlobalExceptionHandler {
    @ExceptionHandler(value = GlobalException.class) // 处理value指向的异常类
    public AjaxResult ajaxResultException(GlobalException e){
        return AjaxResult.me().setMessage("错误原因：" + e.getMessage());
    }

    @ExceptionHandler(value = Exception.class) // 处理value指向的异常类
    public AjaxResult Exceptions(Exception e){
        return AjaxResult.me().setMessage("系统异常...，错误原因：" + e.getMessage());
    }
}
